#!/bin/bash
# 判断参数个数
showpolicy(){
case $# in
    0)
        echo "错误: 未提供参数"
        exit 1
        ;;
    # 单参数：进程信息
    1)
    	echo -e "\n\033[31m ----------------实时查看进程的调度策略----------------- \033[0m "
    	echo -e "\033[31m 进程优先级： \033[0m "
    	adb shell cat /proc/$1/sched | grep 'prio'
    	echo -e "\033[31m 进程cpuset： \033[0m "
    	adb shell cat /proc/$1/cpuset
    	echo -e "\033[31m 进程CPU亲和性： \033[0m "
    	adb shell cat /proc/$1/status | grep 'Cpus_allowed_list'
        ;;
    2)
    	echo -e "\n\033[31m ----------------实时查看线程的调度策略----------------- \033[0m "
    	echo -e "\033[31m 线程优先级： \033[0m "
    	adb shell cat /proc/$1/task/$2/sched | grep 'prio'
    	echo -e "\033[31m 线程cpuset： \033[0m "
    	adb shell cat /proc/$1/task/$2/cpuset
    	echo -e "\033[31m 线程CPU亲和性： \033[0m "
    	adb shell cat /proc/$1/task/$2/status | grep 'Cpus_allowed_list'
        ;;
    *)
        echo "错误: 传入参数过多"
        exit 1
        ;;
esac
}

while true;do showpolicy $1 $2;sleep 0.1;done;
